#include <QCoreApplication>
#include <QTextStream>
#include <QDebug>
#include <iplugin.h>
#include <QDir>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    
    IPlugin *plugin;

// 使用参数 argv[1]
    QPluginLoader pluginLoader(argv[1]);
    // 使用插件加载器加载扩展并尝试创建实例
    QObject *instance = pluginLoader.instance();
    if (instance) {
        // 如果实例创建成功，尝试转换对象
        plugin = qobject_cast<IPlugin *>(instance);
        if (plugin) {
            QTextStream(stdout) << QString("> 加载插件并调用函数:\n")
                << "> plugin->PluginName(): " 
                << plugin->PluginName() << "\n";
        }
        pluginLoader.unload();
    }

    return 0;
    // return a.exec();
}

